Direct Memory Access/addressing (DMA) is a method of transferring data from one memory area to another without having to go through the central processing unit. Computers with DMA channels can transfer data to and from devices much more quickly than those in which the data path goes through the computer's main processor. The DMA channels are controlled by DMA engines. The conventional DMA engines typically act as passive data communicators. The conventional DMA engine designs focus on achieving the maximum throughput, minimizing latency, or enhancing flexibility in assigning sources and destinations. For example, the conventional DMA engines provide for constant data transfer rates regardless of the variations in the system throughput requirement or the system power state.